﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace NutriLeaf.Web.Core.Forum
{
    public interface IForumCategory
    {
        void AddForumCategory(string categoryName, string categoryDescription, ref Model.NutriLeafDBEntities context);

        void AddForumSubCateogy(string categoryName, string categoryDescription, Model.ForumCategory parentCategory, ref Model.NutriLeafDBEntities context);

        void AddForumSubCateogy(string categoryName, string categoryDescription, int parentCategoryId, ref Model.NutriLeafDBEntities context);

        List<Model.ForumCategory> GetSubCategories(int ForumCategoryId, ref Model.NutriLeafDBEntities context);

        Model.ForumCategory GetParentCategory(int ForumCategoryId, ref Model.NutriLeafDBEntities context);

        Model.ForumCategory GetForumCategory(int ForumCategoryId, ref Model.NutriLeafDBEntities context);

        void RemoveAllSubCategories(int ForumCategoryId, ref Model.NutriLeafDBEntities context);

        void RemoveForumCategory(int ForumCategoyrId, ref Model.NutriLeafDBEntities context);

        void AddForumToForumCategory(int ForumId, int ForumCategoryId, ref Model.NutriLeafDBEntities context);

        void RemoveForumFromForumCategory(int ForumId, int ForumCategoryId, ref Model.NutriLeafDBEntities context);

        List<Model.ForumCategory> GetForumCategoriesOfForum(int ForumId, ref Model.NutriLeafDBEntities context);

        List<Model.ForumThread> GetForumsInCategory(int categoryId, ref NutriLeaf.Web.Model.NutriLeafDBEntities context);
    }
}